package com.dd.cloud.user.service.drugs;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dd.cloud.user.entity.drugs.DrugsOutbound;
import com.dd.cloud.user.req.drugs.DrugsOutboundGroupPageReq;
import com.dd.cloud.user.req.drugs.DrugsOutboundOrderPageReq;
import com.dd.cloud.user.res.drugs.DrugsOutboundGroupPageRes;
import com.dd.cloud.user.res.drugs.DrugsOutboundOrderPageRes;
import com.dd.cloud.user.res.drugs.SummaryPage;

import javax.servlet.http.HttpServletResponse;

/**
 * <p>
 * 药品出库记录表 服务类
 * </p>
 *
 * @author czg
 * @since 2023-04-18
 */
public interface IDrugsOutboundService extends IService<DrugsOutbound> {

    /**
     * 分页查询出库记录 按药品分组查询
     */
    Page<DrugsOutboundGroupPageRes> getDrugsOutboundPage(DrugsOutboundGroupPageReq req);

    /**
     * 分页查询药品出库记录 按订单查询
     */
    SummaryPage<DrugsOutboundOrderPageRes> getDrugsOutboundOrderPage(DrugsOutboundOrderPageReq req);


    /**
     * excel导出 分页查询出库记录 按药品分组查询
     */
    void exportDrugsOutboundExcel(DrugsOutboundGroupPageReq req, HttpServletResponse response);

    /**
     * excel导出 分页查询药品出库记录 按订单查询
     */
    void exportOrderOutboundExcel(DrugsOutboundOrderPageReq req, HttpServletResponse response);
}
